#!/usr/bin/env python3
# -*- coding: utf-8 -*-

"""
数据库工具类
提供数据库连接和常用查询功能
"""

import sqlite3
import os
from config import DATABASE_CONFIG

def get_db_connection():
    """获取数据库连接"""
    conn = sqlite3.connect(DATABASE_CONFIG['path'], timeout=20.0)  # 设置连接超时
    conn.row_factory = sqlite3.Row
    return conn

def limit_image_files(folder, max_files=1000):
    """限制图片文件夹中的文件数量，最多保留指定数量的图片"""
    import glob
    
    files = glob.glob(f"{folder}/*.jpg")
    if len(files) > max_files:
        # 按文件修改时间排序，删除最旧的文件
        files.sort(key=os.path.getmtime)
        for file in files[:-max_files]:  # 保留最新的图片
            try:
                os.remove(file)
            except:
                pass